Conventional digital storage oscilloscopes (DSOs) record and display a digital representation of an electrical signal for analysis. This signal is converted to a stream of digital data points. When operating at the highest resolution of time intervals, such as 1 billion data points per second, conventional DSOs are unable to display all the received data on a finite sized screen, typically about 500 pixels wide, with the screen refreshed at finite time intervals, typically 60 times per second. Under these circumstances, the DSO is only capable of displaying 30,000 data points per second (500 pixels.times.60 refreshes/second,) or 0.003% of the available signal. This is referred to as a 0.003% "live time" characteristic.
To provide a useful display, typical DSOs selectively display only a small fraction of the data. For example, to analyze the characteristics of a repeated transition from a high to a low logic state, with the highest time base resolution, the DSO may convert, rasterize and display only the small amount of data received around the time of the critical transition, without processing or displaying the signal during the much larger time intervals in between the critical repeated events. To provide enhanced viewability, such DSOs may provide a persistent display that allows a user to note a single transient anomaly occurring during one of the brief critical intervals. Unfortunately, if such an anomaly occurs during the other 99.997% of the time, it will go unobserved and unrecorded. To display a greater time interval per screen refresh, resolution may be vastly reduced, but this prevents the visualization of brief anomalies. While useful for analyzing transients or anomalies occurring at known times, these systems are unsuited for detecting and displaying unpredictably occurring anomalies.
To provide improved live time performance, DSOs have been developed that rasterize acquired data into a composite bit map, then display a sequence of composite bit maps at the display rate. Such a system is disclosed in U.S. Pat. No. 5,530,454 to Etheridge et al., which is incorporated herein by reference. Each bit map will include a multitude of overlaid data traces, so that an anomaly departing from the normally repeated and overlaid signal data will be visible. This is analogous to a photographic time exposure of a busy road taken at night; the light traces of properly driven individual cars will be indistinguishable from each other, but a car veering off the road will be recorded, although without a visible record of the car's path before it veered from the normal flow. Similarly, the signal trace immediately before and after an anomaly will be lost in the multitude of other nominal traces preventing a more detailed analysis of the anomalous signal. In addition, while such systems enjoy vastly improved live times, up to about 20%, these are still inadequate to detect infrequent and unpredictable anomalies. Essentially, this approach is not limited by the display update rate as in typical DSOs, but instead by the rate at which the acquired data can be rasterized and transferred for display.
Other conventional oscilloscopes have employed limit tests to compare a newly-received waveform to a previously-received reference waveform. U.S. Pat. No. 4,510,571 to Dagostino et al. discloses a system in which a reference digital signal segment is stored, then a subsequent signal segment that is expected to be identical to the reference signal is received and compared. If the new signal segment deviates from expectations, it is stored for analysis or display. New signal segments are acquired and compared at intervals. Such a system has several disadvantages.
First, the signal segment that may be analyzed is brief relative to the time period before the next signal is acquired; live time is very low. The reference and newly acquired waveforms are limited to the duration of the display interval; memory capacity beyond this would not be useful and would increase costs needlessly. Also, the comparison of the new waveform to the reference waveform is conducted after the waveform is received. The new waveform is stored, then the compared with the respective waveforms also stored in memory. Even without the limitations on memory size, this serial "store-retrieve-compare" approach has substantial down time while memory is being read, during which no acquired signal may be written. While such a system is adequate for analysis of brief, repeated signal segments, it is inadequate for identifying signal anomalies that may occur at any time.
Second, the Dagostino system does necessarily not provide for analysis of signal characteristics preceding or following a "glitch." While the stored signal segment containing the glitch is preserved, a glitch occurring near the beginning or end of the stored period may not have adequate data preceding or following to provide a complete analysis.
Third, the Dagostino system is useful only for determining whether a signal complies with a single reference signal. Only one value or range will be tolerated for each interval. This prevents such a system from being applicable to logic signals that may have two or more acceptable values at any time period, such as a conventional "eye diagram." In logic applications, it is limited to determining only that the logic value is as expected, and will not confirm that a logic system is generally performing as expected, regardless of logic value at particular time.
Thus, there is a need for a system and method that permits the recording and high resolution analysis of an unpredictably timed, brief anomalous signal, without obscuring the nominal data adjacent the anomaly. Such is provided by a method of analyzing and displaying waveforms by acquiring an electrical signal, converting it into a stream of digital data points, and sequentially storing each data point to a memory device. Then, analyzing each of the data points to detect whether the data point is an anomalous data point outside of a preselected range. Until an anomalous data point is detected, the steps of acquiring, converting, storing, and analyzing data are repeated. Shortly after the anomalous data point is detected, storage of the data points to the memory device is stopped, so that the anomalous data point and adjacent data points are preserved in memory. Then, the anomalous data point is displayed, preferably along with the immediately preceding and succeeding data points.